/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package videogest;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
import java.io.IOException;
import java.sql.*;
import persistencia.persistenciaProveedor;
/**
 * Esta clase es una subclase que hereda de sujeto.
 * Esta contendrá los atributos especificos a un proveedor, como es el CIF.
 * @author Jesus FC
 * @version 1.0
 */
public class Proveedor extends Sujeto{
    private String CIF;

    public Proveedor(String nombre, String direccion, String telefono, String email, String CIF){
        super(nombre, direccion, telefono, email);
        this.CIF = CIF;
    }

    public Proveedor(String nombre, String direccion, String telefono, String email, String CIF, boolean baja){
        super(nombre, direccion, telefono, email, baja);
        this.CIF = CIF;
    }
  /**
  *
  * @param CIF
  */
    public void setCIF(String CIF) {
        if(!CIF.equals("")){
            this.CIF = CIF;
        }
        
    }

    public String getCIF() {
        return CIF;
    }

    /**
     * Este metodo enviara a la base de datos un nuevo alta, osea ser, creara un nuevo
     * registro en la base de datos.
     */
    @Override
    public void alta() {

        persistenciaProveedor.alta(this);
      
    }

    /**
     * Este metodo enviara a la base de datos una modificacion, osea ser, modificara
     * un registro de la base de datos
     */
    @Override
    public void modificar() {

        persistenciaProveedor.modificar(this);
       
    }

    @Override
    public String toString(){
        String ret="\n";
        ret += "================================================\n";
        ret += "|           DATOS DEL PROVEEDOR \n";
        ret += "================================================\n";
        ret += "|-- Proveedor: "+getNombre()+"\n";
        ret += "|-- Direccion: "+getDireccion()+"\n";
        ret += "|-- Telefono: "+getTelefono()+"\n";
        ret += "|-- Email: "+getEmail()+"\n";
        ret += "|-- CIF: "+getCIF()+"\n";
        ret += "================================================\n";
        return ret;
    }

    @Override
    public boolean equals(Object o){
        boolean res=false;
       if(o instanceof Proveedor){
           Proveedor p=(Proveedor)o;
           if(this.getCIF().equals(p.getCIF())){
               res=true;
           }
       }
       return res;
    }

    @Override
    public int hashCode() {
        return 0;
    }
    public static Proveedor dameProveedor(String cif) throws IOException {
        return persistenciaProveedor.dameProveedor(cif);
    }
}
